As a result of the widespread adoption of smart-phones, the number of different platforms available for execution of applications has exploded. In addition to the relatively few operating systems available for other devices such as personal computers, application developers must now consider a number of new mobile operating systems (such as WINDOWS MOBILE, GOOGLE ANDROID, APPLE IOS, and NOKIA SYMBIAN operating systems) in order to ensure broad operability. Adding to this dilemma, equipment and service providers often add to or otherwise alter open operating systems such as GOOGLE ANDROID, thereby requiring application developers to take numerous versions of the same operating system into account when testing an application.
In many cases, the only way to ensure that an application will operate correctly on these various devices is to test the application on each such device or using an associated software development kit (SDK). This process, however, is time consuming and requires the developer to obtain the devices or SDKs to be evaluated before testing and debugging may commence.